package it.trekker.prefetch;

import java.util.List;

import it.trekker.dao.Excursion;
import it.trekker.dao.GPSCoordinate;
import it.trekker.dao.User;

public interface IExcursionDAOWithPrefetch {
	
	public double getSearchingRadius();
	public void setSearchingRadius(double searchingRadius);
	public boolean isCacheEnabled();
	public void setCacheEnabled(boolean cacheEnabled);
	public int insert(Excursion excursion);
	public int remove(int id);
	public int update(Excursion excursion);
	public Excursion findExcursionById(int id, boolean loadCoordinates);
	public List<Excursion> findExcursionByName(String name);
	public List<Excursion> findAllExcursions();
	public List<Excursion> findCloseExcursions(Excursion excursion);
	public List<Excursion> findCloseExcursions(GPSCoordinate gpsCoord);
	public List<Excursion> findExcursionsByUser(User user);
//	public void loadCache(Excursion excursion);
	
}
